/*
 * Powered By [rapid-framework]
 * Csdn Code: generate simple CRUD code in single table.
 * Since 2015 - 2017
 */

BUI.use('common/page');
BUI.use([ 'common/search', 'bui/overlay', 'bui/grid', 'bui/data','bui/form'],
    function(Search, Overlay, Grid, Data, Form) {
        var channelStatisticsConfigOwnerEnum = {
            '0' : 'xxxxx',
            '1' : 'xxxxx',
            '2' : 'xxxxx',
            '3' : 'xxxxx'
        };
        // 查询表单
        var form = new Form.Form({
            srcNode : '#searchForm'
        }).render();
        // 定义表头
        columns = [
            {
                title : '主键ID',
                dataIndex : 'channelId',
                visible : false
            },
            {
                title : '渠道名称',
                dataIndex : 'channelName',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'text',
                    rules : {
                        required : [ true, '渠道名称不能为空!' ]
                    }
                }
            },
            {
                title : '渠道英文名称(权限)',
                dataIndex : 'channel',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'text',
                    rules : {
                        required : [ true, '渠道英文名称(权限)不能为空!' ]
                    }
                }
            },
            {
                title : '注册数金额',
                dataIndex : 'registerAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '注册数金额不能为空!' ]
                    }
                }
            },
            {
                title : '激活数金额',
                dataIndex : 'activationAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '激活数金额不能为空!' ]
                    }
                }
            },
            {
                title : '申请数金额',
                dataIndex : 'applyAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '申请数金额不能为空!' ]
                    }
                }
            },
            {
                title : '提交数金额',
                dataIndex : 'submitAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '提交数金额不能为空!' ]
                    }
                }
            },
            {
                title : '通过数金额',
                dataIndex : 'adoptAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '通过数金额不能为空!' ]
                    }
                }
            },
            {
                title : '绑卡数金额',
                dataIndex : 'tieCardAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '绑卡数金额不能为空!' ]
                    }
                }
            },
            {
                title : '签约数金额',
                dataIndex : 'signAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '签约数金额不能为空!' ]
                    }
                }
            },
            {
                title : '放款数',
                dataIndex : 'loanAmounts',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'number',
                    rules : {
                        required : [ true, '放款数不能为空!' ]
                    }
                }
            },
            {
                title : '放款数金额',
                dataIndex : 'loanAmountsNum',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'text',
                    rules : {
                        required : [ true, '放款数金额不能为空!' ]
                    }
                }
            },
            {
                title : '创建时间',
                dataIndex : 'createdTime',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'date',
                    datePicker : {
                        showTime : true
                    },
                    rules : {
                        required : [ true, '最后创建时间不能为空!' ]
                    }
                },
                renderer : BUI.Grid.Format.datetimeRenderer
            },
            {
                title : '更新时间',
                dataIndex : 'updatedTime',
                elCls : 'center',
                width : 120,
                editor : {
                    xtype : 'date',
                    datePicker : {
                        showTime : true
                    },
                    rules : {
                        required : [ true, '最后更新时间不能为空!' ]
                    }
                },
                renderer : BUI.Grid.Format.datetimeRenderer
            },
            {
                title : '操作',
                elCls : 'center',
                width : 100,
                renderer : function(value, obj) {
                    return '<span class="grid-command btn-edit">编辑</span>';
                }
            } ];
        var title = '新增或修改';
        editing = new Grid.Plugins.DialogEditing({
            contentId : 'content', // 设置隐藏的Dialog内容
            triggerCls : 'btn-edit', // 触发显示Dialog的样式
            editor : {
                title : title,
                width : 800
            }
        });
        // 获取数据
        store = new BUI.Data.Store({
            url : 'listChannelStatisticsConfigOwner?field=createdTime&direction=desc',
            pageSize : 20,
            autoLoad : true,
            remoteSort : true
        });
        // 获取表格对象
        gridCfg = Search.createGridCfg(columns, {
            plugins : [ editing, Grid.Plugins.CheckSelection ],
            tbar : { // 添加、删除
                items : [ {
                    btnCls : 'button button-small',
                    text : '<i class="icon-plus"></i>添加',
                    listeners : {
                        'click' : addFunction
                    }
                }, {
                    btnCls : 'button button-small',
                    text : '<i class="icon-refresh"></i>刷新',
                    listeners : {
                        'click' : refreshFunction
                    }
                },  {
                    btnCls : 'button button-small',
                    text : '<i class="icon-remove"></i>删除',
                    listeners : {
                        'click' : delFunction
                    }
                } ]
            },
        });
        editing.on('accept', function(ev) {
            var record = editing.get('record');
            var none = record["channelId"] === undefined;
            var saveUrl = none ? 'saveChannelStatisticsConfigOwner'
                : 'updateChannelStatisticsConfigOwner';
            var requestType = none ? 'POST' : 'PUT';
            jQuery.ajax({
                type : requestType,
                url : saveUrl,
                dataType : 'json',
                contentType : 'application/json;charset=UTF-8',
                data : JSON.stringify(record),
                complete : function(data) {
                    if (data.responseText == "success") { // 删除成功
                        search.load();
                    } else { // 删除失败
                        BUI.Message.Alert('保存失败！');
                    }
                }
            });
        });
        $.ajax({
            url:getRootPath()+'/registerChannel/listAllChannels',
            type:'post',
            dataType:'json',
            data:null,
            success:function(data){
                // console.log(data);
                var Select = BUI.Select;

                var selectName = new Select.Select({
                    render:'#channelNameData',
                    valueField:'#ownerChannel',
                    items:data
                });
                selectName.render();
                selectName.on('change', function(ev){
                    console.log(ev.item);
                    $('#ownerChannel').val(ev.text);
                    $('#ownerCode').val(ev.value);
                });
                // var selectCode = new Select.Select({
                //   render:'#channelCodeData',
                //   valueField:'#ownerCode',
                //   items:data
                // });
                // selectCode.render();
                // selectCode.on('change', function(ev){
                //   // alert(ev.item);
                // });
            }
        });

        // console.log(getRootPath());

        // 编辑提交
        // editing.on('accept', function(ev) {
        // 	var record = editing.get('record');
        // 	var none = record["channelId"] === "";
        // 	var saveUrl = none ? 'saveChannelStatisticsConfigOwner' : 'updateChannelStatisticsConfigOwner';
        // 	var requestType = none ? 'POST' : 'PUT';
        // 	jQuery.ajax({
        // 		type : requestType,
        // 		url : saveUrl,
        // 		dataType : 'json',
        // 		contentType : 'application/json;charset=UTF-8',
        // 		data : JSON.stri=gify(record),
        // 		complete : function(data) {
        // 			if (data.responseText == "success") { // 删除成功
        // 				search.load();
        // 			} else { // 删除失败
        // 				BUI.Message.Alert('保存失败！');
        // 			}
        // 		}
        // 	});
        // });
        // 添加记录
        function addFunction() {
            var newData = {b : 0};
            editing.add(newData,'channelId');
        }
        // 删除选中的记录
        function delFunction() {
            var selections = grid.getSelection();
            delItems(selections);
            store.remove(selections);
        }
        // 刷新
        function refreshFunction() {
            search.load();
        }
        // 删除
        function delItems(items) {
            var ids = "";
            BUI.each(items, function(item) {
                ids += item.channelId + ",";
            });
            if (ids.length) {
                BUI.Message.Confirm('确认要删除选中的记录么？', function() {
                    jQuery.ajax({
                        type : 'DELETE',
                        url : 'removeChannelStatisticsConfigOwner?ids=' + ids,
                        dataType : 'json',
                        data : {},
                        complete : function(data) {
                            if (data.responseText == "success") { // 删除成功
                                search.load();
                            } else { // 删除失败
                                BUI.Message.Alert('删除失败！');
                            }
                        }
                    });
                }, 'question');
            }
        }
        // 查询
        search = new Search({
            store : store,
            autoSearch : true,
            gridCfg : gridCfg
        });
        grid = search.get('grid');
    });